gusucode.com > 最简单的asp计数器 2 > 最简单的asp计数器 2.3/counter/counter_v2.3/count.asp
<% 'Option Explicit '变量定义 Dim fileName, fs, txt, Content, counterLenth, displayMode '属性设置 counterLenth=8 '设置显示数据的最小长度,如果小于实际长度则以实际长度为准 displayMode = 1 '设置显示模式,1为文字,2为图片 fileName=Server.MapPath("count.txt") Set fs=Server.CreateObject("Scripting.FileSystemObject") '初始化 Function Init() '检查文件是否存在,不存在则创建,并写入0 If Not fs.FileExists(fileName) Then fs.CreateTextFile fileName,True,True Set txt=fs.OpenTextFile(fileName,2,True) txt.Write 0 txt.close() Set txt=Nothing End If '缓存为空,则读取文本数据 Set txt=fs.OpenTextFile(fileName,1,1) If txt.AtEndOfStream Then Application("Counter")=0 '如果文件中没有数据,则初始化Application("Counter")的值(为了容错) Else Application("Counter")=txt.ReadLine End If txt.close() Set txt=Nothing Application.Lock '利用Application特性防止并发写入 Application("Counter") = Application("Counter") + 1 SaveNum(Application("Counter")) '写入新数据 Application.UnLock End Function '显示计数函数 Function ReadNum() Init() ReadNum=PrintNumber(Application("Counter")) '调用显示方式函数 End Function '保存数据函数 Function SaveNum(Content) Set txt=fs.OpenTextFile(fileName,2,True) txt.Write Content txt.Close Set txt = Nothing End Function '显示方式函数 Function PrintNumber(x) Dim i,MyStr,sCounter sCounter = Clng(x) For i = 1 To counterLenth - Len(sCounter) If displayMode=1 Then MyStr = MyStr & "0" Else MyStr = MyStr & "<IMG SRC=改成你自己的图片存放的相对目录\0.gif>" '如有图片,可调用此语句 End If Next For i = 1 To Len(sCounter) If displayMode=1 Then MyStr = MyStr & Mid(sCounter, i, 1) Else MyStr = MyStr & "<IMG SRC=改成你自己的图片存放的相对目录\" & Mid(sCounter, i, 1) & ".gif>" '如有图片,可调用此语句 End If Next PrintNumber = MyStr End Function %>